home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Linux Cubed Series 3: Developer Tools
/
Linux Cubed Series 3 - Developer Tools.iso
/
ptolemy
/
install
< prev
next >
Wrap
Text File
|
1996-11-16
|
8KB
|
236 lines
Contents
========
0 General Notes
1 Installing Ptolemy (without Recompiling)
1.1 Set Environment Variables
1.2 Necessary Linux Changes
1.3 Installing Ptolemy Sources and Binaries
2. Installing and Compiling Ptolemy from Scratch
2.1 Setting Environment Variables
2.2 Necessary Linux Changes
2.3 Installing, Patching and Compiling Ptolemy, Octtools and Tcl/Tk
3. Known Bugs
0 General Notes
=================
This document only contains additional information!
Actual ASCII versions of installation notes are available at
ftp://ptolemy.eecs.berkeley.edu/pub/ptolemy/ptolemy0.6/INSTALL_0.6
or in hypertext form at
http://ptolemy.eecs.berkeley.edu/ptolemy0.6/INSTALL_0.6
Important Note: All following remarks are valid only for installing Ptolemy
version 0.6 in conjunction with the Slackware distribution
3.0 of Linux (both, kernel version 1.2.13 and kernel version
1.3.20)! All given examples are for bash!
Unfortunally Patrick Volkerding changed the libg++ package
on Thu Nov 30 08:09:14 PST 1995. The new libg++ package(2.7.0a)
is buggy (a call of the gethostbyname() function causes
a Segmentation fault)! That means all C++ programs using this
function (including Ptolemy) will not work. All binaries
linked with the old libg++ will complain that libg++.so.26 and
libstdc++.so.26 could not be found and won't start. A link will
not fix that problem due to the incompatibilities.
A workaround is to use the previous libg++ package(2.6.2.5).
Uninstall the libg++ package 2.7.0a and install the package
libg++ 2.6.2.5 using the pkgtool command.
1 Installing Ptolemy (without Recompiling)
================================================
You don't need to install the tcl7.4/tk4.0 package of Slackware 3.0.
Ptolemy now needs itcl/itk and comes with it's own itcl/itk version.
1.1 Setting Environment Variables
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Set and export variables needed to run Ptolemy:
export PTOLEMY=/users/ptolemy
export OCTTOOLS=$PTOLEMY/octtools
export PTARCH=linux
export PATH=$PTOLEMY/bin:$PTOLEMY/bin.${PTARCH}:$OCTTOOLS/bin.${PTARCH}:${PATH}
Set variable TarDir to the name of the directory, which contains
the gzipped sources and binaries.
E.g. if your archives reside in /var/tmp then set TarDir
as follows:
TarDir=/var/tmp
1.2 Necessary Linux Changes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The changes 1.2a) and 1.2b) in this section are necessary only, if
you want to use your own stars.
1.2a) Correct a wrong symbolic link:
rm /usr/include/asm
ln -s /usr/src/linux/include/asm-i386 /usr/include/asm
1.2b) Add a link to find g++-includes:
ln -s /usr/lib/g++-include /usr/include/g++
1.3 Installing Ptolemy Sources and Binaries
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
At least you need to get the follwing archives:
pt-0.6.src.tar.gz
pt-0.6.linux.tar.gz
Unpack and untar these archives:
cd $PTOLEMY/..
tar -xzvf $TarDir/pt-0.6.src.tar.gz
tar -xzvf $TarDir/pt-0.6.linux.tar.gz
Optionally unpack the .t files of the stars:
tar -xzvf $TarDir/pt-0.6.xtra-src.tar.gz
Now you are ready and Ptolemy should work fine.
2. Installing and Compiling Ptolemy from Scratch
=====================================================
2.1 Setting Environment Variables
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Set and export variables needed to build and run Ptolemy:
export PTOLEMY=/users/ptolemy
export OCTTOOLS=$PTOLEMY/octtools
export PTARCH=linux
export PATH=$PTOLEMY/bin:$PTOLEMY/bin.${PTARCH}:$OCTTOOLS/bin.${PTARCH}:${PATH}
Set variable TarDir to the name of the directory,
which contains the gzipped sources and binaries.
E.g. if your archives reside in /var/tmp then set TarDir
as follows:
TarDir=/var/tmp
2.2 Necessary Linux Changes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2.2a) Correct a wrong symbolic link:
rm /usr/include/asm
ln -s /usr/src/linux/include/asm-i386 /usr/include/asm
2.2b) Add a link to find g++-includes:
ln -s /usr/lib/g++-include /usr/include/g++
2.2c) Install a patched gcc-2.7.0:
get cc1plus.tar.gz and install this patched binary of cc1plus
(made by Neal Becker <neal@ctd.comsat.com>):
cd /
tar -xzvf $TarDir/cc1plus.tar.gz
2.3 Installing, Patching and Compiling Ptolemy, Octtools and Tcl/Tk
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
NOTICE : There is a serious bug in GNU make which will prevent making
Ptolemy by just typing "make install". The neccesary steps
are listed below.
2.3a) Install Ptolemy sources:
At least you need to get the follwing sources:
pt-0.6.src.tar.gz
pt-0.6.other.src.tar.gz
Unpack and untar the sources:
cd $PTOLEMY/..
tar -xzvf $TarDir/pt-0.6.src.tar.gz
tar -xzvf $TarDir/pt-0.6.other.src.tar.gz
Remark: Ptolemy 0.6 needs itcl/itk which isn't part of the
Slackware 3.0 distribution. That's why we use itcl/itk
came with pt-0.6.other.src.tar.gz.
2.3b) You may now decide whether to build Ptolemy with static libs or
shared libs. (See the comment in section 3)
Apply the appropriate patch for the config-linux.mk file :
cd $PTOLEMY
gzip -cd $TarDir/pt-0.6.linux-static-patch1.gz|patch -p2
or
gzip -cd $TarDir/pt-0.6.linux-dynamic-patch1.gz|patch -p2
2.3c) Build Tcl/Tk, Octtools and Ptolemy:
# start building
cd $PTOLEMY
make obj.$PTARCH >make.log 2>&1
make install_tcltk >>make.log 2>&1
make install_octtools >>make.log 2>&1
make install_gthreads >>make.log 2>&1
# and now fiddle around to make gmake happy
cd obj.linux/ptcl
# create a dummy file to prevent make from sisegv'ing or aborting
# may be you'll need to create more dummy files
touch makefile.0
# this is for the second bug
# (otherwise make complains about a missing rule)
make libptcl.so >>make.log 2>&1
cd ../..
# and now continue the normal way
make install >>$PTOLEMY/make.log 2>&1
cd bin.linux
ln -s /usr/X11/bin/xv .
This writes all output into the log file make.log. You can trace
the building process from another (virtual) terminal with the
command:
tail -f $PTOLEMY/make.log
The process of building takes some time (e.g. 3:30 on a 486/100,
20 MB RAM and 1:30 on a Pentium/133, 32 MB RAM). After the
building process has finished Ptolemy occupies about 120 MB of
hard disk memory. Binaries are now linked dynamically against
both system libraries (except for tcl/tk) and ptolemy libraries .
Now Ptolemy should work without any problems and dynamic loading
of stars via ELF function dlopen() should work fine too.
3 Known Bugs
==================
Whenever you leave the Label Editor window (vem) with Button "Ok" or with
the Button "Dismiss" you get the following error message:
A Fatal Xt Toolkit Error has occurred:
Attempt to unmanage a child when parent is not Composite
Type 'y' to continue, 'n' to exit, 'a' to abort
(continuing may have unpredictable consequences):
If you answer with 'y', then Ptolemy continues without any further errors.
This seems to be a harmless bug in X11R6 with patch level fix-12, wich came
with Slackware 3.0. In the next version of XFree86 this bug will be fixed.
It turns out that the binaries built with shared libs run about 25% slower
than the statically linked binaries.
That's all. You can report any Linux specific Ptolemy bugs to Wolfgang
Reimer <reimer@e-technik.tu-ilmenau.de>. Other Ptolemy bugs can be reported
to the Ptolemy hackers <ptolemy-hackers@ptolemy.eecs.berkeley.edu>.